package com.itheima.reggie.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.itheima.reggie.entity.Employee;
import com.itheima.reggie.entity.R;

/**
 * <b><code>IEmployeeService</code></b>
 * <p/>
 * 员工信息service
 * <p/>
 * <b>Creation Time:</b> 16/06/2024 20:44.
 *
 * @author yanjr
 * @since reggie_take_out
 */
public interface IEmployeeService extends IService<Employee> {
    /**
     * 员工登录
     * @param employee 用户名和密码
     * @return 用户信息
     */
    Employee login(Employee employee);

    /**
     * 新增员工
     * @param employee 员工信息
     * @return 是否添加成功
     */
    R<String> addEmployee(Employee employee);

    /**
     * 用户分页查询
     * @param page 当前页
     * @param pageSize 每页显示条数
     * @param name 用户名
     */
    R<Page<Employee>> queryEmployee(int page, int pageSize, String name);

    /**
     * 更新 用户
     * @param employee 请求参数
     * @return 是否成功
     */
    R<String> updateEmployee(Employee employee);

    /**
     * 根据用户id查询用户信息
     * @param id 用户id
     * @return 用户信息
     */
    R<Employee> queryEmployeeById(Long id);
}
